import request from '@/config/axios'

// 项目需求变更记录表单 VO
export interface RequireChangeRecordVO {
  id: number // 自增主键
  requirementId: string // 关联需求编号
  changeTime: Date // 需求变更时间
  changer: string // 需求变更操作用户
  changeReason: string // 需求变更原因
  preChangeContent: string // 需求变更前内容
  postChangeContent: string // 需求变更后内容
  preChangeAttributes: string // 需求变更前属性（如优先级、权重等）
  postChangeAttributes: string // 需求变更后属性（如优先级、权重等）
  preChangeStatus: string // 需求变更前状态
  postChangeStatus: string // 需求变更后状态
}

// 项目需求变更记录表单 API
export const RequireChangeRecordApi = {
  // 查询项目需求变更记录表单分页
  getRequireChangeRecordPage: async (params: any) => {
    return await request.get({ url: `/project/require-change-record/page`, params })
  },

  // 查询项目需求变更记录表单详情
  getRequireChangeRecord: async (id: number) => {
    return await request.get({ url: `/project/require-change-record/get?id=` + id })
  },

  // 新增项目需求变更记录表单
  createRequireChangeRecord: async (data: RequireChangeRecordVO) => {
    return await request.post({ url: `/project/require-change-record/create`, data })
  },

  // 修改项目需求变更记录表单
  updateRequireChangeRecord: async (data: RequireChangeRecordVO) => {
    return await request.put({ url: `/project/require-change-record/update`, data })
  },

  // 删除项目需求变更记录表单
  deleteRequireChangeRecord: async (id: number) => {
    return await request.delete({ url: `/project/require-change-record/delete?id=` + id })
  },

  // 导出项目需求变更记录表单 Excel
  exportRequireChangeRecord: async (params) => {
    return await request.download({ url: `/project/require-change-record/export-excel`, params })
  },
}